1. Field of the Invention
The present invention relates generally to data storage and retrieval systems, for e.g., in a telecommunications network, and more particularly, to an improved method for high-speed data queuing and retrieval in a distributed network.
2. Discussion of the Prior Art
There are many applications in a telecommunications network that require high-speed data processing. Examples include the collection, sorting, and forwarding of call detail database records which contain, e.g., date, time, origination and termination of routing queries for customers of a telecommunications carrier. It is the case that hundreds of millions of these call records may be processed per day in a typical network. Another example is the distribution, storage, and retrieval of "items" for real-time call processing. In the context of this disclosure, "items" refer to data entities that are to be collected, sorted, and provided to a requesting object, i.e., network process, and may be objects, files, records, or any sort of data elements. In the context of telecommunications, for example, a requesting object can be an Automated Call Distributor (ACD) switch feature that distributes calls in one or more queues to one or more agents. Thus, in this context, items are calls in queues. Another example is a call record processing system that collects and processes call records generated from a plurality of network elements in a telecommunications network. One requirement that these different applications have in common is the need for high-speed data retrieval, e.g., from computer memory or magnetic/optical storage devices, and sorting. Data retrieval is often needed from temporary data queues that are distributed among a plurality of computers and/or data storage devices. Thus, data must be advantageously sorted as well.
A problem exists in that database mechanisms that write data to and read data from memory and storage devices are often too slow to meet the high-speed demands of data processing systems for telecommunications networks and other applications. Often, a single process or object needs to retrieve data from multiple data queues that are distributed among a plurality of computers or storage devices ("sources") that are accessed via a data network. Prior art systems which enable a software process or object to retrieve data from a single source or from multiple sources across a network using available database read/write mechanisms are just too slow to meet the high-speed demands of many of today's high-volume data processing applications.
It would be highly desirable to provide a data queuing and data retrieval method for networks requiring high-rates of data collection.